package com.hxx.day11.mapper;

import java.io.FileWriter;
import java.io.Writer;
import java.lang.reflect.Method;
import java.util.Properties;

public class BaseMapper<T> {
    /**
     * 保存
     */
    public void save(T t) throws Exception{
        Properties properties = new Properties();
        //获取反射类型
        Class<?> aClass = t.getClass();
        //获取所有的get方法
        Method[] methods = aClass.getDeclaredMethods();
        //遍历所有的方法
        for (Method method : methods) {
            String methodName = method.getName();
            //判断方法是否是get方法
            if(methodName.startsWith("get")){
                //执行get方法获取对应的数据
                Object invoke = method.invoke(t);
                //属性名称
                String propertyName = methodName.substring(3)
                        .toLowerCase();
               //保存到properties
                properties.setProperty(propertyName,invoke.toString());
            }
        }
        //保存
        Writer writer = new FileWriter("d:/zmx/person.properties");
        properties.store(writer,"保存的属性");
    }
}






















